interval forecasting
通过统计学方法预估区间
-
区间估计法
-
假设待估计值服从正态分布,计算这个值的标准差,然后给定某个置信度,查表得到 z 值。均值加减 z值乘标准差结果,得到左右区间。
-
区间预测中应用
-
假设预测误差服从均值为 0 的正态分布,估计预测误差的标准差
-
给定置信度,查表得到 Z 值
-
计算预测误差的上下限:z*标准差
-
将上下限加到预测值里面,得到一个预测区间
-
-
如何预测标准差
-
用总体标准差近似样本标准差
- 训练集划分出一个验证集,用验证集上的预测误差来估计标准差
-
-
-
[[Bootstrap]] 通过采样 N 次的预测误差,取N次误差的分位数作为上下限,不需要假设误差服从正态分布。
-
例子,三次采样结果 [-50,0,50],5% 分位数 -45
-
随机森林
-
-
[[Monte Carlo]] Dropout
- nn 模型在 inference 阶段保留 dropout 结构,对 x 的每次预测都可以看成是一次抽样
定义特定的损失函数来输出区间
-
直接拟合上下界 [[@High-Quality Prediction Intervals for Deep Learning: A Distribution-Free, Ensembled Approach]]
-
-
#card
-
应用
-
指定三个分位数(0.1,0.5,0.9),把这三个分位数损失加起来作为最终的损失函数。
-
[[MQRNN]] [[MQCNN]]
-
lightgbm和 xgboost 的 objective 也支持 quantile 选项
-
-
-
负对数似然损失 #card
-
[[DeepAR]] 指定预测值服从的概率分布,利用神经网络预测概率分布的参数,构造负对数似然作为损失函数,优化损失函数得到概率分布的参数。
-
预测时通过蒙特卡洛采样的方式生成预测值和区间预测
-
采样 100 次,均值就是点预测结果,95% 和 5% 分位数对应区间预测的结果
-
-
工具
-
GluonTS
-
Darts
-
MAPIE
Ref
interval forecasting
https://blog.xiang578.com/post/logseq/interval forecasting.html